import { Module } from '@nestjs/common';
import { FileService } from './file.service';
import { FileController } from './file.controller';
import { MulterModule, } from '@nestjs/platform-express';
import { diskStorage, } from 'multer';
import { TypeOrmModule } from '@nestjs/typeorm';
import dayjs = require('dayjs');
@Module({
    //上传配置
    imports: [
        // TypeOrmModule.forFeature([File]), //后续再说其作用
        MulterModule.register({
            storage: diskStorage({
                // 配置文件上传后的文件夹路径，设置到我们实际项目并列的 public 文件夹中
                destination: `./public/uploads/${dayjs().format('YYYY-MM-DD')}`,
                filename: (req, file, cb) => {
                    //文件上传之后的回调，文件为空不走
                    //取出结尾的类型为扩展名，如果没有扩展名，多拼一个点也没事，实际使用也没影响
                    let ext = file.originalname.split('.').at(-1)
                    // 在此处自定义保存后的文件名称，仍然使用原后缀名，没有就不用
                    let filename = `${new Date().getTime()}.${ext ? ext : ''}`
                    return cb(null, filename);
                },


            })
        })
    ],
    controllers: [FileController],
    providers: [FileService],
})
export class FileModule { }
